03 - Colisões e HP
Para colisões com a parede adicione isso no evento etapa* do player. onde está escrito colisão você deve deixar o nome do objeto que vai servir como parede
if place_meeting(x + hspeed,y,colisao){
hspeed = 0;
}
if place_meeting(x,y + vspeed,colisao){
vspeed = 0;
}
Para fazer o personagem tomar dano ao tocar o inimigo:
-
Adicione as variáveis hp e invuln no evento criar do player:
hp = 100; invuln = 1.5; -
Crie um evento de alarme -> alarme 0 no jogador. Esse alarme por agora se manterá vazio e será apenas um delay entre vezes que o jogador toma dano.
-
Crie agora um evento de Colisão com o objeto do inimigo, e adicione o seguinte código lá dentro:
if alarm[0] < 0 {
hp -= 10;
alarm[0] = game_get_speed(gamespeed_fps) * invuln;
}
- Para nossa vida aparecer de forma visual no jogo, crie um evento de Desenhar -> Desenhar e coloque o seguinte código:
draw_self()
draw_set_colour(c_yellow)
draw_text(x - 20,y - 50,hp)